Method and system for generating recommendations associated with client process execution in an organization

ABSTRACT

The disclosed embodiments illustrate methods and systems for generating recommendations for client process execution of one or more client processes corresponding to a plurality of clients of an organization. The method comprises retrieving an event log including event data captured during execution of one or more processes in the organization to service a plurality of clients of a predefined type. The event log is analyzed across the plurality of clients to determine cross-clientele information including a process compliance deviation between an observed and an expected client process execution of the one or more processes. Thereafter, a set of root-causes of the process compliance deviation is determined based on process models of the one or more processes and/or decision rules of the organization. Further, one or more recommendations for the client process execution of the one or more processes of the organization are generated, based on the set of root-causes.

TECHNICAL FIELD

The presently disclosed embodiments are related, in general, to processexecution in an organization. More particularly, the presently disclosedembodiments are related to methods and systems for generatingrecommendations associated with process execution in an organization.

BACKGROUND

Service-sector organizations, such as service providers, are trained toserve a set of processes within different domains across a large numberof clients. Certain Service Level Agreements (SLAs) are required to bemet by the Service-sector organizations by use of a service deliverynetwork for performance quantification. Mostly, the performance of theservice-sector organizations may be challenged by various factors, suchas inefficient processes, complex workflows, tighter costs, andstringent compliance requirements.

To overcome such challenges, a service-sector organization records eventdata associated with clients and their processes to gain insights onprocess execution, by use of various process mining techniques. Incertain scenarios, the service-sector organization may serve a standardset of processes within different domains across various clients. Thoughthere may be certain commonalities within similar processes acrossvarious clients, however, each such may have its own specifications withrespect to such similar processes. Accordingly, the operational keyperformance indicators (KPIs) of the service-sector organization acrosssuch clients may be dissimilar even for such similar processes. Thisdissimilarity in process performance may be attributed to variousfactors, such as variations in workflow design, resource allocation,context dependencies, and/or skill deficiencies. For example, twoclients that require a similar process, such as a document verification,to be executed, may incur different turnaround times for processcompletion. In certain scenarios, this may result in the service-sectororganization meeting SLAs for one set of clients, and violating those ofother sets of clients, despite the similarity in processes. Thus, thereis a need to gain insights for such variance in performance and optimizethe execution of the processes across the multiple clients serviced bythe organizations.

Further limitations and disadvantages of conventional and traditionalapproaches will become apparent to one of skill in the art, throughcomparison of described systems with some aspects of the presentdisclosure, as set forth in the remainder of the present application andwith reference to the drawings.

SUMMARY

According to embodiments illustrated herein, there is provided a methodfor recommending a client process execution based on event log datapertaining to execution of one or more client processes corresponding toa plurality of clients of an organization. The method may includeretrieval of an event log from a memory device, by one or moreprocessors. The event log may include data associated with one or moreevents captured during execution of one or more processes in theorganization. The one or more processes may correspond to servicesprovided by the organization to a plurality of clients of a predefinedtype. Further, the method may include analysis of the retrieved eventlog across the plurality of clients of the predefined type, by the oneor more processors. Based on the analysis of the event log across theplurality of clients, cross-clientele information associated with theone or more processes may be determined. The cross-clientele informationmay include at least a process compliance deviation between observed andexpected client process execution of the one or more processes. Themethod may further include determination of a set of root-causesassociated with the process compliance deviation of the one or moreprocesses, by the one or more processors. The set of root-causes may bedetermined based on at least one or more process models of the one ormore processes and/or one or more decision rules associated with theorganization. In addition, the method may include generation of one ormore recommendations for the client process execution of the one or moreprocesses of the organization, based on the determined set ofroot-causes, by the one or more processors.

According to embodiments illustrated herein, there is provided a systemfor recommending a client process execution based on event log datapertaining to execution of one or more client processes corresponding toa plurality of clients of an organization. The system includes one ormore processors configured to retrieve an event log from a memorydevice. The event log may include data associated with one or moreevents captured during execution of one or more processes in theorganization. The one or more processes may correspond to servicesprovided by the organization to a plurality of clients of a predefinedtype. Further, the one or more processors may be configured to analyzethe retrieved event log across the plurality of clients of thepredefined type. Based on the analysis of the event log across theplurality of clients, cross-clientele information associated with theone or more processes may be determined. The cross-clientele informationmay include at least a process compliance deviation between observed andexpected client process execution of the one or more processes. The oneor more processors may be further configured to determine a set ofroot-causes associated with the process compliance deviation of the oneor more processes. The set of root-causes may be determined based on atleast one or more process models of the one or more processes and/or oneor more decision rules associated with the organization. In addition,the one or more processors may be further configured to generate one ormore recommendations for the client process execution of the one or moreprocesses of the organization, based on the determined set ofroot-causes.

According to embodiments illustrated herein, there is provided acomputer program product for use with a computing device. The computerprogram product comprises a non-transitory computer readable mediumstoring a computer program code for recommending a client processexecution based on event log data pertaining to execution of one or moreclient processes corresponding to a plurality of clients of anorganization. The computer program code is executable by one or moreprocessors in the computing device to retrieve an event log from amemory device. The event log may include data associated with one ormore events captured during execution of one or more processes in theorganization. The one or more processes may correspond to servicesprovided by the organization to a plurality of clients of a predefinedtype. The computer program code is further executable by the one or moreprocessors to analyze the retrieved event log across the plurality ofclients of the predefined type. Based on the analysis of the event logacross the plurality of clients, cross-clientele information associatedwith the one or more processes may be determined. The cross-clienteleinformation may include at least a process compliance deviation betweenobserved and expected client process execution of the one or moreprocesses. The computer program code is further executable by the one ormore processors to determine a set of root-causes associated with theprocess compliance deviation of the one or more processes. The set ofroot-causes may be determined based on at least one or more processmodels of the one or more processes and/or one or more decision rulesassociated with the organization. In addition, the computer program codeis further executable by the one or more processors to generate one ormore recommendations for the client process execution of the one or moreprocesses of the organization, based on the determined set ofroot-causes.

BRIEF DESCRIPTION OF DRAWINGS

The accompanying drawings illustrate the various embodiments of systems,methods, and other aspects of the disclosure. Any person with ordinaryskills in the art will appreciate that the illustrated elementboundaries (e.g., boxes, groups of boxes, or other shapes) in thefigures represent one example of the boundaries. In some examples, oneelement may be designed as multiple elements, or multiple elements maybe designed as one element. In some examples, an element shown as aninternal component of one element may be implemented as an externalcomponent in another, and vice versa. Furthermore, the elements may notbe drawn to scale.

Various embodiments will hereinafter be described in accordance with theappended drawings, which are provided to illustrate the scope and not tolimit it in any manner, wherein like designations denote similarelements, and in which:

FIG. 1 is a block diagram of a system environment, in which variousembodiments can be implemented;

FIG. 2 is a block diagram that illustrates a system for generatingrecommendations associated with client process execution in anorganization, in accordance with at least one embodiment;

FIG. 3A is a flowchart that illustrates a method for generatingrecommendations associated with client process execution in anorganization, in accordance with at least one embodiment;

FIG. 3B is a flowchart that illustrates a method for performing across-clientele analysis of an event log across a plurality of clientsof an organization, in accordance with at least one embodiment;

FIG. 4 is a flow diagram that illustrates a method for generatingrecommendations associated with client process execution in anorganization, in accordance with at least one embodiment;

FIG. 5 illustrates an exemplary event log of one or more processes thatmay be executed in an organization to service a plurality of clients ofa predefined type, in accordance with at least one embodiment;

FIG. 6 illustrates an exemplary process model for transaction-basedbusiness processes of an organization, in accordance with at least oneembodiment;

FIGS. 7A and 7B illustrate exemplary process models of a process acrosstwo different clients, which may be determined based on across-clientele analysis of an event log, in accordance with at leastone embodiment; and

FIG. 8 illustrates exemplary deviations in client process execution ofone or more processes, which may be determined based on complianceanalysis of an event log across a plurality of clients, in accordancewith an embodiment.

DETAILED DESCRIPTION

The present disclosure is best understood with reference to the detailedfigures and description set forth herein. Various embodiments arediscussed below with reference to the figures. However, those skilled inthe art will readily appreciate that the detailed descriptions givenherein with respect to the figures are simply for explanatory purposesas the methods and systems may extend beyond the described embodiments.For example, the teachings presented and the needs of a particularapplication may yield multiple alternative and suitable approaches toimplement the functionality of any detail described herein. Therefore,any approach may extend beyond the particular implementation choices inthe following embodiments described and shown.

References to “one embodiment,” “at least one embodiment,” “anembodiment,” “one example,” “an example,” “for example,” and so on,indicate that the embodiment(s) or example(s) may include a particularfeature, structure, characteristic, property, element, or limitation,but that not every embodiment or example necessarily includes thatparticular feature, structure, characteristic, property, element, orlimitation. Furthermore, repeated use of the phrase “in an embodiment”does not necessarily refer to the same embodiment.

Definitions: The following terms shall have, for the purposes of thisapplication, the meanings set forth below.

A “computing device” refers to a device that includes one or moreprocessors/microcontrollers and/or any other electronic components, adevice, or a system that performs one or more operations according toone or more programming instructions/codes. Examples of the computingdevice may include, but are not limited to, a desktop computer, alaptop, a personal digital assistant (PDA), a mobile device, aSmartphone, a tablet computer (e.g., iPad® and Samsung Galaxy Tab®),and/or the like.

An “organization” refers to an organized collection of individualsemployed to perform one or more tasks directed towards a particularobjective, such as to perform tasks related to operations,administration, and business dealings associated with the organization.The collection of individuals employed by the organization and/or one ormore external vendors of the organization may work for the organizationto provide one or more services to one or more clients of theorganization. The one or more services may be provided to the one ormore clients by execution of one or more processes in the organization.

A “client” refers to an organization, an individual, a group ofindividuals, or a third party entity, which may request for one or moreservices from an organization. The one or more services may be providedto the client by execution of one or more processes in the organization.In an embodiment, the client may be external to the organization.Alternatively, the client may correspond to an entity internal to theorganization. That is, the client may be a part of a first department orgroup of the organization, whereas, the one or more employees whoservice the request of the client may be a part of the first or a seconddepartment or group of the organization. For instance, the client maycorrespond to a management of the department or group and the one ormore employees may correspond to the personnel associated with thatdepartment or group.

A “resource” refers to an employee, a vendor, a computing-device, abuilding, machinery, and/or other capital investment of an organizationwhich may be an integral entity to provide services to a client.

A “process” refers to a workflow including one or more ordered tasksthat may be performed by one or more resources associated with anorganization to provide a service to at least one client of theorganization. In an embodiment, one or more processes of theorganization may correspond to a transaction-based outsourcing processof the organization to provide one or more transactional services to oneor more clients of the organization. In an embodiment, the organizationmay implement a service delivery framework to service the one or moreclients of the organization. That is, the one or more processes may beexecuted through the service delivery framework to service the one ormore clients of the organization.

“Process compliance” refers to a degree of adherence of an observedexecution of a process with respect to an expected execution of theprocess. A deviation of the process compliance of a process may beobserved when the observed execution of the process deviates from itsexpected execution in terms of one or more performance metrics (in termsof SLAs/KPIs), control-flow related aspects, data-related aspects,and/or resources-related aspects.

An “activity” or “task” refers to an individual step that may berequired to be performed to carry out a workflow associated with aprocess, during an execution of the process. The activity or task mayhave well defined input and output parameters. A resource of theorganization employed on the activity or task may be required to applyhis/her skill set and experience to efficiently convert the input to theoutput associated with the activity or task to meet SLAs or KPIs definedfor the activity or task.

An “event” refers to an occurrence of an instance of a process, such aswhen an activity or task related to an execution of the process isperformed by a resource associated with an organization. The event maybe captured along with metadata associated with the event, such asoccurrence timestamp, resources involved, incurred cost, and the like.Data associated with the captured event may be stored as event data inan event log in a database.

A “Service Level Agreement” (SLA) refers to a service delivery contractthat may be officially agreed upon and signed between a service provider(such as an organization) and a service recipient (such as a client ofthe organization). Typically, the SLA may include various aspects ofservice, such as scope, quality, and responsibilities of both parties ofthe contract. Any lapses related to execution of work related to the SLAmay require the party responsible for the lapses to bear any lossesincurred thereof, as per terms and conditions specified in the SLA.

A “Key Performance Indicator” (KPI) refers to a measurable businessmetric that may be used by an organization to evaluate factors that maybe considered as essential for success of the organization. The KPIs maydiffer for various organizations, based on the type of the organizationand the domain of operation of the organization. Examples of KPIs mayinclude, but are not limited to, turn-around-time (TAT), averageprocessing time of process, and the like.

A “service delivery framework” refers to a pre-determined business planor a blueprint associated with a service-sector organization that may beimplemented by the organization to service a plurality of clients ofvaried types. The plurality of clients of different types may beprovided one or more services by the organization by execution of one ormore processes in the organization through the service deliveryframework implemented by the organization. In addition, in anembodiment, the service delivery framework may define how the pluralityof clients of the organization may be segregated into various predefinedtypes. The service delivery framework may also be used to translateclient specific SLAs and KPIs (external or committed to the client) intoorganizational SLAs and KPIs (internal or committed within theorganization), and vice versa. The service delivery framework may alsoindicate the various service offerings of the organization and anoperational structure of the organization for servicing clients ofdifferent types.

A “process model” refers to structural or descriptive representationassociated with a workflow or a pattern of ordered activities or tasksassociated with a process. In an embodiment, a process model of aprocess may be pre-determined for an organization and a predefined typeof a plurality of clients of the organization. The process model mayalso be determined based on process mining (or process discoveryanalysis) of the event log across the plurality of clients of thepredefined type.

A “decision rule” refers to a rule that may define or constraint one ormore aspects of business or decision-making associated with anorganization. The decision rule may assert a business structure tocontrol or influence a process execution behavior of one or moreprocesses in the organization.

An “organizational structure” refers to a system that may define ahierarchy of employees, associates, or consultants associated with anorganization. The organization structure may identify various jobs inthe organization. Further, the organizational structure may indicateauthority, communication, rights, duties, and chain of reportingframework associated with each job in the organization.

“Skill metrics” refer to one or more matrices that may be used torepresent experience and skill proficiency of various resourcesassociated with the organization.

FIG. 1 is a block diagram of a system environment 100 in which variousembodiments may be implemented. The system environment 100 includes oneor more organizational computing-devices 102, one or more clientelecomputing-devices 104, a first user computing-device 106, a databaseserver 108, an application server 110, and a communication network 112.The one or more organizational computing-devices 102 may include a firstset of computing-devices 102A-1 to 102A-N, a second set ofcomputing-devices 102B-1 to 102B-N, and a third set of computing-devices102C-1 to 102C-N. The one or more clientele computing-devices 104 mayinclude one or more first client computing-devices 104A, one or moresecond client computing-devices 1048, and one or more third clientcomputing-devices 104C. The one or more first client computing-devices104A may include a first computing-device 104A-1, a secondcomputing-device 104A-2, and a third computing-device 104A-3, associatedwith a first client. Similarly, the one or more second clientcomputing-devices 104B may include a first computing-device 104B-1, asecond computing-device 104B-2, and a third computing-device 104B-3,associated with a second client. Further, the one or more third clientcomputing-devices 104C may include a first computing-device 104C-1, asecond computing-device 104C-2, and a third computing-device 104C-3,associated with a third client. The various devices of the systemenvironment 100 may be communicatively coupled through the communicationnetwork 112.

The one or more organizational computing-devices 102 may correspond tocomputing devices that may be used in an organization by one or moreemployees or vendors of the organization. The one or more organizationalcomputing-devices 102 may be used to perform one or more tasksassociated with operations, management, or administration of theorganization. Further, the one or more organizational computing devices102 may be used to perform one or more tasks associated with one or moreprocesses executed in the organization to service a plurality of clientsof the organization. In an embodiment, the organization may implement aservice delivery framework to service the plurality of clients of theorganization. That is, the one or more processes may be executed throughthe service delivery framework to service the plurality of clients ofthe organization. In accordance with an embodiment, the one or moreorganizational computing-devices 102 may capture one or more distinctevents during the execution of the one or more processes. Thereafter,the one or more organizational computing-devices 102 may transmit thecaptured event and associated information, i.e. metadata, to thedatabase server 108 for storage in an event log. The event data storedin the event log may be later analyzed by the application server 110 forgeneration of recommendations for the client process execution of theone or more processes in the organization.

In FIG. 1, the one or more organization computing-devices 102 are shownto include computing devices of various types. For instance, the firstset of computing-devices 102A-1 to 102A-N from amongst the one or morecomputing-devices 102 may correspond to computing-devices that may beprovided at workstations associated with the one or more employees ofthe organization. Examples of the first set of computing devices 102A-1to 102A-N may include desktop personal computers or thin-client (orVirtual Machine) based computers. Further, the second set ofcomputing-devices 102B-1 to 102B-N may include portable computingdevices that may be used by the one or more employees or vendors duringtraveling, official tours, work-from-home, or otherwise. In addition,the third set of computing devices 102C-1 to 102C-N may correspond toportable computing devices used under a BYOD (Bring Your Own Device) ITinfrastructure associated with the organization. That is, the third setof computing devices 102C-1 to 102C-N may be owned by the individualemployees or vendors of the organization. However, one or more hardwareand/or software may be installed or configured in such computing devicesto enable such computing devices to function according to the ITpolicies of the organization, to protect against data theft and dataleakage. Examples of the portable computing devices may include, but arenot limited to, a laptop, a tablet computer, a Smartphone, and/or apersonal digital assistant.

The one or more clientele computing-devices 104 may correspond tocomputing devices that may be associated with one or more clients of theorganization. The one or more first client computing-devices 104A may beassociated with the first client, whereas the one or more second clientcomputing-devices 104B may be associated with the second client.Further, the one or more third client computing-devices 104C may beassociated with the third client. The one or more clients of theorganization may request one or more services that may be provided bythe organization. The one or more services may be provided to the one ormore clients based on execution of one or more processes in theorganization. The one or more clients may receive an output of the oneor more services from the one or more organizational computing-devices102, on the one or more clientele computing-devices 104. The output ofthe one or more services may include, but is not limited to, one or morereports, media content, compilation of data and statistics and/or otherinformation provided by the organization to the one or more clients onrequest.

In an embodiment, the client may be external to the organization.Alternatively, the client may correspond to an entity internal to theorganization. That is, the client may be a part of a first department orgroup of the organization, whereas, the one or more employees whoservice the request of the client may be a part of a second departmentor group of the organization. In another scenario, the one or moreemployees may be employees of the same first department or group of theorganization. For instance, the client may correspond to a management ofthe department or group and the one or more employees may correspond tothe personnel associated with that department or group. When the clientcorresponds to an internal entity of the organization, one or morecomputing-devices of the client may belong to the one or moreorganizational computing-devices 102.

The one or more clientele computing devices 104 may be of various types.For instance, the first computing-device 104A-1 associated with thefirst client may correspond to desktop personal computers or thin-client(or Virtual Machine) based computers. The second computing-device 104A-2associated with the first client may correspond to portable computingdevices used by users associated with the first client while traveling,official tours, work-from-home, or otherwise. Further, the thirdcomputing-device 104A-3 associated with the first client may correspondto portable computing devices used under a BYOD IT infrastructure of thefirst client. Examples of the portable computing devices may include,but are not limited to, a laptop, a tablet computer, a Smartphone,and/or a personal digital assistant. The one or more second clientcomputing-devices 104B and the one or more third clientcomputing-devices 104C may be similar to the one or more first clientcomputing-devices 104A.

The first user computing-device 106 may correspond to a computing deviceused by a user who may desire to receive recommendations foroptimization of the one or more processes of the organization. The usermay correspond to an employee of the organization, such as an analyst, amanager of a department, a business unit head, and/or a director of acompany. Alternatively, the user may correspond to a third partyassociate, such as a legal or corporate counsel, an external auditor,and/or a client of the organization. The user may use the first usercomputing-device 106 to transmit a request to the application server 110to analyze the one or more processes of the organization across aplurality of clients of the organization. The plurality of clients maybelong to predefined types. Based on the analysis, the first usercomputing-device 106 may receive one or more recommendations foroptimization of the one or more processes of the organizations, whichmay be displayed to the user, via a user interface of the firstcomputing-device 106.

In an embodiment, the first user computing device 106 may either be oneof the one or more organizational computing-devices 102 or may be one ofthe one or more clientele computing-devices 104. Alternatively, thefirst user computing-device 106 may be separate from the one or moreorganizational computing-devices 102 and the one or more clientelecomputing-devices 104, as shown in FIG. 1. Examples of the firstcomputing-device 106 may include, but are not limited to, a personalcomputer, a laptop computer, a tablet computer, a Smartphone, and/or apersonal digital assistant.

In an embodiment, the database server 108 may be configured to store theevent log associated with the one or more processes executed in theorganization. The event log may store data associated with the one ormore events that may be captured during the execution of the one or moreprocesses in the organization. In accordance with an embodiment, the oneor more processes may correspond to services provided by theorganization to the plurality of clients of the predefined type. Thus,the event log may be associated with services provided to the pluralityof clients of the predefined type. Further, the database server 108 maystore one or more other event logs that may store event data related toone or more other processes used to service another plurality of clientsof another predefined type. Alternatively, the database server 108 maystore a single event log that may include event data related toprocesses used to service all the clients of the organization. In such ascenario, during the analysis of the event log, the event log may befiltered to retrieve event data associated with the plurality of clientof a specific predefined type.

In addition to storing the event log, the database server 108 may storeaugmented business data associated with the organization. The augmentedbusiness data may include one or more process models of the one or moreprocesses, or decision rules, organizational structure, and/or skillmetrics associated with the organization. Further, the database server108 may also store information associated with the service deliveryframework deployed by the organization to provide services to the one ormore clients based on execution of the one or more processes.

In an embodiment, the database server 104 may receive a query from theone or more organizational computing-devices 102, the first usercomputing-device 106, and/or the application server 110, toextract/store information from/to the database server 108. The databaseserver 108 may be realized through various database technologies suchas, but not limited to, Microsoft® SQL Server, Oracle®, IBM DB2®,Microsoft Access®, PostgreSQL®, MySQL®, and SQLite®. In an embodiment,the one or more organizational computing-devices 102, the first usercomputing-device 106, and/or the application server 110 may connect tothe database server 108 using one or more protocols such as, but notlimited to, Open Database Connectivity (ODBC) protocol and Java DatabaseConnectivity (JDBC) protocol.

A person with ordinary skills in the art will understand that the scopeof the disclosure is not limited to the database server 108 as aseparate entity. In an embodiment, the functionalities of the databaseserver 108 can be integrated into the application server 110 and/or thefirst user computing-device 106.

In an embodiment, the application server 110 refers to a computingdevice or a software framework hosting an application or a softwareservice. In an embodiment, the application server 110 may be implementedto execute procedures such as, but not limited to, programs, routines,or scripts stored in one or more memories for supporting the hostedapplication or the software service. In an embodiment, the hostedapplication or the software service may be configured to perform one ormore predetermined operations.

In an embodiment, the application server 110 may be configured toreceive a request from the first user computing-device 106 forrecommendations to improve execution of one or more processes associatedwith provision of services by the organization to a plurality of clientsof a predefined type. Based on the received request, the applicationserver 110 may extract event data associated with one or more eventsthat may be captured during execution of the one or more processes inthe organization. As discussed, the one or more processes may be used toservice the plurality of clients of the predefined type. The applicationserver 110 may analyze the retrieved event data across the plurality ofclients of the predefined type to determine cross-clientele informationassociated with the one or more processes. The cross-clienteleinformation may include includes a process compliance deviation betweenan observed and an expected client process execution of the one or moreprocesses. For instance, the cross-clientele information may includecompliance deviations of the processes, in terms of one or moreperformance metrics (such as KPIs/SLAs), control-flow related aspects,data-related aspects, and/or resources-related aspects. The applicationserver 110 may determine a set of root-causes associated with theprocess compliance deviation based at least on one or more processmodels of the one or more processes and/or one or more decision rulesassociated with the organization. Thereafter, the application server 110may generate one or more recommendations for an optimized execution ofthe one or more processes in the organization based on the determinedset of root-causes. The application server 110 may transmit the one ormore generated recommendations to the first user computing device 106,for display to the user of the first user computing device 106. Theanalysis of the event log for the generation of the one or morerecommendations for improvement of execution of the one or moreprocesses is explained further in conjunction with FIG. 3A and FIG. 3B.

The application server 110 may be realized through various types ofapplication servers such as, but not limited to, a Java applicationserver, a .NET framework application server, a Base4 application server,a PHP framework application server, or any other application serverframework.

A person with ordinary skills in the art will understand that the scopeof the disclosure is not limited to the application server 110 as aseparate entity. In an embodiment, the application server 110 may beimplemented as an application program installed on the first usercomputing-device 106. In such a scenario, the first usercomputing-device 106 may include the functionalities of the applicationserver 110.

The communication network 112 corresponds to a medium through whichcontent and messages flow between various devices of the systemenvironment 100 (e.g., the one or more organizational computing-device102, the one or more clientele computing-devices 104, the first usercomputing-device 106, the database server 108, and/or the applicationserver 110). Examples of the communication network 112 may include, butare not limited to, a Wireless Fidelity (Wi-Fi) network, a Wireless AreaNetwork (WAN), a Local Area Network (LAN), or a Metropolitan AreaNetwork (MAN). Various devices in the system environment 100 can connectto the communication network 112 in accordance with various wired andwireless communication protocols such as Transmission Control Protocoland Internet Protocol (TCP/IP), User Datagram Protocol (UDP), and 2G,3G, or 4G communication protocols.

FIG. 2 is a block diagram that illustrates a system for generatingrecommendations associated with client process execution in anorganization, in accordance with at least one embodiment. With referenceto FIG. 2, there is shown a system 200 that may correspond to theapplication server 110 or the first user computing-device 106. For thepurpose of ongoing description, the system 200 is considered as theapplication server 110. However, the scope of the disclosure should notbe limited to the system 200 as the application server 110. The system200 may also be realized as the first user computing-device 106, withoutdeparture from the scope of the disclosure.

The system 200 includes one or more processors, such as a processor 202,one or more memories, such as a memory 204, one or more transceivers,such as a transceiver 206, and one or more input/output (I/O) units,such as an I/O unit 208. The system 200 may further include an analyticsengine 210, a root-cause diagnosis engine 212, and a recommendationengine 214. The transceiver 206 may be connected to the communicationnetwork 112.

The processor 202 may be configured to execute one or more sets ofinstructions, codes, scripts, and programs stored in the memory 204. Theprocessor 202 is coupled to the memory 204, the transceiver 206, the I/Ounit 208, the analytics engine 210, the root-cause diagnosis engine 212,and the recommendation engine 214. The processor 202 may execute the oneor more sets of instructions, codes, scripts, and programs stored in thememory 204 to perform the one or more associated operations. Theprocessor 202 may be implemented based on a number of processortechnologies known in the art. Examples of the processor 202 include,but are not limited to, an X86-based processor, a Reduced InstructionSet Computing (RISC) processor, an Application-Specific IntegratedCircuit (ASIC) processor, and/or a Complex Instruction Set Computing(CISC) processor.

The memory 204 may be operable to store one or more machine codes,and/or computer programs having at least one code section executable bythe processor 202. The memory 204 may store the one or more sets ofinstructions, codes, scripts, and programs. Some of the commonly knownmemory implementations include, but are not limited to, a random accessmemory (RAM), a read only memory (ROM), a hard disk drive (HDD), and asecure digital (SD) card. In an embodiment, the memory 204 may includethe one or more machine codes, and/or computer programs that may beexecutable by the processor 202 to perform specific operations. It willbe apparent to a person having ordinary skill in the art that the one ormore sets of instructions, codes, scripts, and programs stored in thememory 204 may enable the hardware of the system 200 to perform the oneor more associated operations.

The transceiver 206 may be operable to communicate with the one or moredevices, such as the one or more organizational computing-devices 102,the one or more clientele computing-devices 104, and the first usercomputing-device 106, and/or one or more servers, such as the databaseserver 108, via the communication network 112. The transceiver 206 maybe configured to receive a request from a user of the first usercomputing-device 106, via the communication network 112. Based on therequest, under the command of the processor 202, the transceiver 206 maybe configured to receive event data retrieved from the event log storedin the database server 108. The received event data may then be storedin the memory 204 for further analysis. The transceiver 206 may furthertransmit the one or more recommendations generated based on the analysisof the event data to the first user computing-device 106, via thecommunication network 112.

Examples of the transceiver 206 may include, but are not limited to, anantenna, an Ethernet port, a USB port, or any other port that can beconfigured to receive and transmit data. The transceiver 206 may receiveand transmit data/information in accordance with the variouscommunication protocols, such as, TCP/IP, UDP, and 2G, 3G, or 4Gcommunication protocols through an input terminal and an outputterminal, respectively over the communication network 112.

The I/O unit 208 may comprise suitable logic, circuitry, interfaces,and/or code that may be operable to receive one or more inputs from oneor more users of the system 200. The I/O unit 208 may be operable tocommunicate with the processor 202. Examples of the input devices mayinclude, but are not limited to, a touch screen, a keyboard, a mouse, ajoystick, a microphone, a camera, a motion sensor, a light sensor,and/or a docking station.

The analytics engine 210 may comprise suitable logic, circuitry,interfaces, and/or code that may be operable to execute one or more setsof instructions, codes, scripts, and programs stored in the memory 204.The analytics engine 210 may be realized by use of one or moremathematical models, one or more statistical models and/or one or morealgorithms. The analytics engine 210 may be configured to perform thecross-clientele analysis of the event data extracted from the event log(stored in the database server 108) to determine cross-clienteleinformation. The cross-clientele information may be include statisticaltrends in the event data related to the execution of the one or moreprocesses of the organization across the plurality of clients of thepredefined type. In an embodiment, the analysis of the event data mayfurther include one or more of: a process discovery analysis, a processcomplexity analysis, a compliance analysis, and a performance analysis.

The analytics engine 210 may be implemented based on a number ofprocessor technologies known in the art. Examples of the analyticsengine 210 may include, but are not limited to, an X86-based processor,a Reduced Instruction Set Computing (RISC) processor, anApplication-Specific Integrated Circuit (ASIC) processor, and/or aComplex Instruction Set Computing (CISC) processor.

The root-cause diagnosis engine 212 may comprise suitable logic,circuitry, interfaces, and/or code that may be operable to execute oneor more sets of instructions, codes, scripts, and programs stored in thememory 204. The root-cause diagnosis engine 212 may be realized by useof one or more mathematical models, one or more statistical modelsand/or one or more algorithms. The root-cause diagnosis engine 212 maybe configured to determine the set of root-causes for the processcompliance deviation between the observed and the expected clientprocess execution of the one or more processes. The set of root-causesmay be determined based on the one or more process models of the one ormore processes and/or one or more decision rules associated with theorganization.

The root-cause diagnosis engine 212 may be implemented based on a numberof processor technologies known in the art. Examples of the root-causediagnosis engine 212 may include, but are not limited to, an X86-basedprocessor, a Reduced Instruction Set Computing (RISC) processor, anApplication-Specific Integrated Circuit (ASIC) processor, and/or aComplex Instruction Set Computing (CISC) processor.

The recommendation engine 214 may comprise suitable logic, circuitry,interfaces, and/or code that may be operable to execute one or more setsof instructions, codes, scripts, and programs stored in the memory 204.The recommendation engine 214 may be realized by use of one or moremathematical models, one or more statistical models and/or one or morealgorithms. The recommendation engine 214 may be configured to generatethe one or more recommendations for optimization of the one or moreprocesses based on the determined set of root-causes.

The recommendation engine 214 may be implemented based on a number ofprocessor technologies known in the art. Examples of the recommendationengine 214 may include, but are not limited to, an X86-based processor,a Reduced Instruction Set Computing (RISC) processor, anApplication-Specific Integrated Circuit (ASIC) processor, and/or aComplex Instruction Set Computing (CISC) processor.

In FIG. 2, the analytics engine 210, the root-cause diagnosis engine212, and/or the recommendation engine 214 are depicted as independentfrom the processor 202. However, a person skilled in the art willappreciate that the analytics engine 210, the root-cause diagnosisengine 212, and/or the recommendation engine 214 may be implementedwithin the processor 202 without departure from the scope of thedisclosure. Further, a person skilled in the art will appreciate thatthe processor 202 may be configured to perform the functionalities ofthe analytics engine 210, the root-cause diagnosis engine 212, and/orthe recommendation engine 214, without departure from the scope of thedisclosure.

An operation of the system 200 for generation of recommendationsassociated with client process execution in an organization has beenexplained further in conjunction with FIGS. 3A and 3B.

FIG. 3A is a flowchart that illustrates a method for generatingrecommendations associated with client process execution in anorganization, in accordance with at least one embodiment. With referenceto FIG. 3A, there is shown a flowchart 300 that has been described inconjunction with FIG. 1 and FIG. 2. The flowchart 300 illustrates themethod that starts at step 302.

At step 302, an event log may be retrieved from the database server 108.In an embodiment, the processor 202 may be configured to retrieve theevent log from the database server 108. Prior to retrieval of the eventlog from the database server 108, the database server 108 may beconfigured to receive event data associated with one or more events. Theone or more events may occur when one or more processes are executed toprovide one or more services by an organization to a plurality ofclients of a predefined type. The predefined type may correspond to, butnot limited to, a geographical region of operation of a client, one ormore domains in which the client operates, a type of work that theclient allocates to the organization, and/or a type of operational orfunctional relationship of the client and the organization.

In an embodiment, one or more resources (such as, the one or moreemployees or vendors of the organization) may use the one or moreorganizational computing-devices 102 to perform one or more tasks toprovide the one or more services to the plurality of clients. The one ormore tasks may be associated with an execution of the one or moreprocesses in the organization. In an embodiment, the one or moreorganizational computing-devices 102 may include an application programinstalled therein that may monitor the performance of the one or moretasks on the respective organizational computing-devices 102. Theapplication program installed on each of the one or more organizationcomputing-devices 102 may capture the one or more events based on themonitoring of the performance of each of such one or more task. Theapplication program may also record metadata associated with thecaptured events. The one or more organizational computing-devices 102may transmit information associated with the captured one or more eventsas the event data to the database server 108 for storage in the eventlog.

In an embodiment, the event data may be stored in various formats in theevent log, depending on the type of processes, clients, and/or businessrequirements of the organization. Examples of the various formats inwhich the event data may be stored may include, but not limited to, adatabase record, a plain text file, or any other file type. In anembodiment, a common or consistent file type of the event data may berequired for analysis of the one or more executed processes. In anembodiment, the database server 108 may convert the event data receivedfrom various sources into a common event log format based on ameta-model. Alternatively, if the event data is not in the common eventlog format, the processor 202 may convert the retrieved event data intothe common event log format, before further analysis of the one or moreexecuted processes in the event data. Examples of the common event logformat may include, but not limited to, a Mining eXtensible MarkupLanguage (Mining XML or MXML) format or eXtensible Event Stream (XES)format.

As discussed, the event data may include information pertaining to theone or more events captured during the execution of the one or moreprocesses in the organization. The one or more processes may correspondto a workflow including one or more ordered tasks performed by the oneor more resources associated with the organization to provide a serviceto at least one client. In an embodiment, the one or more processes maycorrespond to a transaction-based outsourcing business of theorganization to provide one or more transactional services to one ormore clients of the organization. In an embodiment, the organization mayimplement a service delivery framework to service the one or moreclients of the organization. That is, the one or more processes may beexecuted through the service delivery framework to service the one ormore clients of the organization. In an embodiment, the service deliveryframework may define how the one or more clients of the organization maybe segregated into various predefined types. The service deliveryframework may also be used to translate client specific SLAs and KPIs(external or committed to the client) into organizational SLAs and KPIs(internal or committed within the organization), and vice versa. Theservice delivery framework may also indicate the various serviceofferings of the organization and an operational structure of theorganization for servicing clients of different types.

In an embodiment, the retrieved event data may include informationrelated to the execution of processes used to service clients of aparticular type. For instance, clients operating in a particular domainof business, or clients based out of a geographic region may belong to aparticular type. In an embodiment, the user of the first usercomputing-device 106 may provide an input associated with thecategorization of the clients into a predefined type based on thevarious criteria, as specified above. Further, the user of the firstuser computing-device 106 may request for recommendations foroptimization of processes related to servicing the clients categorizedin the type specified by the user. In case the event log includes dataof execution of processes related to clients of various types, theprocessor 202 may request the database server 108 to filter the eventlog based on the clients belonging to the type specified by the user.Based on the filtering of the event log, the processor 202 may retrieveevent data related to execution of processes specific to the clientsthat belong to the type specified by the user, from the database server108.

In an exemplary embodiment, each process “p” may be captured in theevent log “L” as a set of process instances “pi” also referred to as a“case.” Each event “e” in the event log “L” may correspond to a singlecase related to an activity or a task. For instance, an event “e₁” maycorrespond to a transcription task, while a next event “e₂” maycorrespond to an audit task. Further, events belonging to a process “p”or a “case” may be ordered, based on a sequence in which the activitiesor the tasks of the process may be performed. In addition, event dataassociated with each event “e” may include metadata or attributesrelated to the event. Examples of the metadata or attributes related tothe event may include, but are not limited to, a transaction type of thetask related to the event, a timestamp related to the execution of theevent, one or more resources involved in the event, a cost associatedwith the event, and/or a revenue associated with the event. Forinstance, an event “e₁” may be related to a transcription task. Themetadata of the event “e₁” may indicate that the transaction type of theevent “e₁” may be a “start” type of task. The metadata related to theevent “e₁” may further indicate that the event “e₁” may be performed ata date/time, such as “Mar. 15, 2016” at “12:30:10 hours IST,” by aresource, “Peter.” Further, the metadata related to the event “e₁” mayindicate that the event “e₁” costs “2.5 USD per minute” and producesrevenue of “3.25 USD per minute.” The metadata or attributes of eachevent associated with a process may be useful for analysis of theexecution of the process to determine one or more performance metricsassociated with the execution of the process. Further, as data relatedto the resources performing the tasks is captured in the metadata orattributes of the event, such information may be useful in determinationof productivity and utilization of the resources. An exemplary event logis explained further in conjunction with FIG. 5.

At step 304, the event log may be analyzed across the plurality ofclients of the predefined type. In an embodiment, the analytics engine210, under the control of the processor 202, may be configured toanalyze the event data associated with the plurality of clients of thepredefined type from the retrieved event log. Based on thecross-clientele analysis of the event data across the plurality ofclients of the predefined type, the analytics engine 210 may determinecross-clientele information. The cross-clientele information maycorrespond to statistics associated with execution of the one or moreprocesses associated with providing services to the plurality of clientsof the predefined type. In an embodiment, the cross-clienteleinformation may include includes a process compliance deviation betweenan observed and an expected client process execution of the one or moreprocesses. For instance, the cross-clientele information may includecompliance deviations of the processes, in terms of one or moreperformance metrics (such as KPIs/SLAs), control-flow related aspects,data-related aspects, and/or resources-related aspects. Thecross-clientele information may further include, but may not be limitedto, one or more process models, a process complexity, one or morebottlenecks, and/or observed values of the one or more performancemetrics, associated with execution of the one or more processes. In anembodiment, the analytics engine 210 may analyze the event dataholistically across four dimensions of process execution, namelycontrol-flow, data, resource, and time. In an embodiment, the analyticsengine 210 may be implemented using a ProM (Process Mining) framework toperform process mining analysis of the event log across the plurality ofclients of the predefined type. The ProM framework may correspond to anextensible software framework that may include one or more modules thatmay support a variety of process mining techniques as plug-ins. Thus,the analytics engine 210 may be built upon the ProM framework to re-usethe process mining techniques supported therein. The analytics engine210 may perform the cross-clientele analysis of the event data byperforming one or more of: a process discovery analysis, a processcomplexity analysis, a compliance analysis, and/or a performanceanalysis of the event log. The performance of the cross-clienteleanalysis of the event log across the plurality of clients of theorganization is explained in further detail in FIG. 3B.

FIG. 3B is a flowchart that illustrates a method for performing thecross-clientele analysis of the event log across the plurality ofclients of the organization, in accordance with at least one embodiment.With reference to FIG. 3B, there is shown a flowchart 304, which is anelaboration of step 304 of the flowchart 300 of FIG. 3A. The flowchart304 of FIG. 3B has been described in conjunction with FIG. 1, FIG. 2,and FIG. 3A. The flowchart 304 illustrates the method that starts atstep 304 a.

At step 304 a, the one or more process models of the one or moreprocesses are determined. In an embodiment, the analytics engine 210,under the control of the processor 202, may be configured to determinethe one or more process models of the one or more processes. Theanalytics engine 210 may determine the one or more process models byperforming a process discovery analysis of the event log across theplurality of clients of the predefined type. Examples of the processdiscovery analysis techniques may include, but are not limited to,Petri-nets, Event-driven Process Chain (EPC), Business Process Model andNotation (BPMN), heuristic-net, and/or other process mining techniquesknown in the art. In an embodiment, the process model of a process maydescribe various aspects related to the process such as, but not limitedto, a control-flow aspect, an organizational aspect, and/or a timeaspect of the process. For instance, the discovered process models mayprovide insights or statistics related to a frequency of execution of aparticular type of activity and a control-flow associated with a processacross the plurality of clients of the predefined type. Other statisticsthat may be uncovered through the process discovery analysis may includean average number of transactions/activities of each type being executedper resource for each process across the plurality of clients. Further,cross-clientele statistics related to number of resources of varioustypes used for various processes may also be determined. An exemplaryprocess model for transaction-based business processes of anorganization is explained further in conjunction with FIG. 6.

The analytics engine 210 may discover one or more workflow patterns usedin the one or more processes, based on the process discovery analysisacross the plurality of clients. Further, the analytics engine 210 maycompare the one or more workflow patterns across the plurality ofclients. Based on the comparison of the one or more workflow patterns,the analytics engine 210 may determine one or more variations of the oneor more workflow patterns across the plurality of clients. Further, theanalytics engine 210 may determine how the one or more workflow patternsare similar across the plurality of clients. In an embodiment, based onsuch comparison of the one or more workflow patterns, the analyticsengine 210 may determine the one or more process models of the one ormore processes. In addition to process discovery analysis, the analyticsengine 210 may perform a complexity analysis of the event log todetermine a process complexity associated with each of the one or moreprocesses. The process complexity of each process may indicate a levelof complexity and external dependency associated with that process.Complexity of each process may be defined in terms of number of activitynodes and connected arcs in a graphical representation (such as aPetri-net graph) of the process model of the process. Complexity of eachprocess may also be captured in terms of other metrics, such as“structured-ness” or “entropy,” of the process model of the process.Exemplary process models of a process across two different clients,which may be determined based on the cross-clientele analysis of theevent log, are explained further in conjunction with FIGS. 7A and 7B.

At step 304 b, the observed values of the one or more performancemetrics of the one or more processes may be determined. Further, the oneor more process bottlenecks of the one or more processes may also bedetermined. In an embodiment, the analytics engine 210, under thecontrol of the processor 202, may determine the observed values of theone or more performance metrics and the one or more process bottlenecksof the one or more processes, based on performance analysis of the eventlog. The observed values of the one or more performance metrics and theone or more bottlenecks may be determined based on cross-clienteleanalysis of the metadata of the one or more events in the retrievedevent data. The one or more performance metrics may be measured in termsof a set of Key Performance Indicators (KPIs) and/or a set of ServiceLevel Agreements (SLAs). The set of KPIs or SLAs may be defined based onthe one or more process models, decision rules of the organization,client requirements, and/or the predefined type associated with theplurality of clients.

For instance, timestamp values associated with activities of varioustypes may be used to determine metrics, such as average processing orworking time, associated with that activity type. Further, analysis ofthe timestamp values may also be used to determine values of metrics,such as waiting time of activities, sojourn time between activities, andturnaround time (TAT) of activities. On cross-clientele analysis of themetadata related to the resources across the plurality of clients, theanalytics engine 210 may determine various resource performance metrics.For instance, average processing time taken by a resource to processactivities of various types, efficiency and productivity metricsassociated with performance of an activity, and the like, may bedetermined. The one or more bottlenecks may be determined in terms ofmetrics, such as average waiting time of activities of various types,types of activities that are in wait state for a maximum time (orgreater than a threshold time). Other metrics that may be used todetermine the one or more bottlenecks may include resource allocationper activity, average slack time of activities of various types,resources that consume maximum time during processing of activities of aparticular type, and the like.

At step 304 c, a process compliance deviation between an observed and anexpected client process execution of the one or more processes may bedetermined. In an embodiment, the analytics engine 210, under thecontrol of the processor 202, may determine the process compliancedeviation by performing compliance analysis of the event log. In anembodiment, the analytics engine 210 may determine the expected valuesof the one or more performance metrics and/or expected client processexecution behavior of the one or more processes based on the one or moreprocess models and/or decision rules associated with the organization.The analytics engine 210 may determine the observed behavior of theclient process execution of the one or more processes in terms of theobserved values of the one or more performance metrics and otherdimensions of process execution such as control-flow, data, resources,and time. In an embodiment, the analytics engine 210 may determine theprocess compliance deviation in quantitative and qualitative terms. Todetermine the quantitative deviation, the analytics engine 210 maycompare the observed values of the one or more performance metrics (asdetermined in step 304 b) with the expected values of the one or moreperformance metrics. As the one or more performance metrics maycorrespond to quantitative performance metrics, the deviation in termsof these performance metrics may be a measure by which the observedexecution differs from the expected execution of the one or moreprocesses in quantitative terms. In addition, the analytics engine 210may also perform compliance analysis of the event log across theplurality of clients qualitatively, to determine one or more qualitativeperformance metrics. That is, the analytics engine 210 may determine aqualitative deviation associated with the execution of the one or moreprocesses. The qualitative deviation may indicate as to how compliant isthe observed execution behavior of the one or more processes withrespect to the expected execution behavior of the one or more processes.The qualitative deviation associated with the execution of the one ormore processes may be measured in terms of an objective fitness metric.Exemplary deviations in the client execution of the one or moreprocesses, which may be determined based on compliance analysis of theevent log across the plurality of clients, are explained in conjunctionwith FIG. 8.

To perform the compliance analysis (both qualitative and quantitative),the analytics engine 210 may model an expected execution behavior ofeach process based on a process model associated with that processand/or a business rule (or decision rule) associated with theorganization. The process model of the process may either be predefinedfor the organization and the predefined type of the plurality ofclients, or may be determined at step 304 a. On the other hand, thebusiness rule (or the decision rule) may correspond to one or morepre-specified workflows and instructions associated with execution of aprocess of a particular type. The business rule (or the decision rule)may be used to check a control-flow or timing aspect of a processexecution. Once the expected execution behavior of each process ismodeled, the analytics engine 210 may use one or more replay techniquesto perform the compliance analysis.

For instance, the analytics engine 210 may use a Petri-net (or aDeclarative model-based) representation of a process model of eachprocess to replay one or more process instances (or activities capturedas events) associated with that process. The replay of the one or moreprocess instances of the process based on the process model of theprocess may reveal deviations associated with execution of the process.The business rule (or the decision rule) may also be applied during thereplay of the one or more process instances of the process to ascertainwhether the process is conformant to the business constraints associatedwith the organization. Based on the process instance replay, theanalytics engine 210 may determine deviations in terms of one or morequality metrics, such as fitness, precision, and generalization.

The fitness of a process may indicate how well the observed execution ofthe process resembles (or fits to a model of) the expected execution ofthe process (based on the process model of the process). Higher thedegree of fitness of the process, closer is the observed execution ofthe process is to the expected execution of the process. Thus, such aprocess may be more conformant to the expected execution behavior of theprocess and may have lesser deviations. Further, the precision of eachprocess may indicate whether the process is under-fitting (or anover-generalization/specialization of) the process model of thatprocess. That is, the precision of a process may correspond to a ratioof an expected number of transitions to an observed number oftransitions, among activities of the process, with respect to a givenexecution context. A prefix automation technique may be used todetermine the precision of each of the one or more processes. Inaddition, the generalization of each process may indicate whether theprocess is over-fitting (or an under-generalization/specialization of)the process model of that process. The generalization of a process maycorrespond to a probability of uncovering a previously unvisited path ofthe process model of the process on occurrence of a new event in aparticular state. The occurrence of various activities of a process inone or more states may be modeled by using a multinomial probabilitydensity function (PDF). Further, a Bayesian predictor may be appliedover the multinomial PDF of the activities to determine a degree ofgeneralization of the process.

A person with ordinary skill in the art may understand that steps 304 band 304 c may be performed in parallel by the analytics engine 210.Further, the steps 304 b and 304 c may be combined as a single step,wherein compliance checking and performance checking may be performed atthe same time. In another scenario, the sequence in which steps 304 band 304 c are performed may be changed. That is, step 304 c may beperformed before step 304 b.

Referring back to the flow chart 300 of FIG. 3A, at step 306, a set ofroot-causes associated with the process compliance deviation of the oneor more processes may be determined. In an embodiment, the root causediagnosis engine 212, under the control of the processor 202, maydetermine the set of root-causes associated with the process compliancedeviations determined based on the qualitative and/or the quantitativecompliance analysis of the event log (as per step 304 c of FIG. 3B).That is, the process compliance deviation may correspond to a differencebetween the observed execution behavior and the expected executionbehavior (qualitative and/or quantitative) of the one or more processes.The determination of the set of root-causes may be based on augmentedbusiness data associated with the organization. The augmented businessdata may include, but may not be limited to, one or more process modelsassociated with the one or more processes and or decision rulesassociated with the organization. The augmented business data mayfurther include an organizational structure associated with theorganization and/or skill metrics of the one or more resourcesassociated with the organization. In an embodiment, the root-causediagnosis engine 212 may identify one or more features that may affectthe execution behavior of each process based on a correlation analysisof the event data across the plurality of clients and the augmentedbusiness data. Based on the identified one or more features, theroot-cause diagnosis engine 212 may formulate a problem-statementassociated with the set of root-causes as a learning problem.Thereafter, the root-cause diagnosis engine 212 may determine a solutionof the learning problem to determine the set of root-causes using one ormore machine learning techniques. Examples of the one or more machinelearning techniques may include, but are not limited to, decision trees,random forest search, regression trees, support vector machines (SVM),Bayesian techniques, genetic algorithm, or artificial neural networks(ANN).

For instance, for a particular process, a skill set level of theresources may be identified as one of the features that may affect theexecution behavior of the process. Based on the correlation analysis,the skill set level of the resources may be found to closely influence aperformance metric, such as average working time of the process.Accordingly, the root-cause diagnosis engine 212 may formulate aproblem-statement to ascertain which one or more skills in the skill setof the resources is one of the root-causes for the deviation in theaverage working time of that process. Thereafter, a resource-skillmatrix may be constructed based on the relevant augmented business data.Each cell (i,j) in the resource-skill matrix may capture proficiencylevel of a resource “i” in a skill “j.” The resources may then beclassified into different classes based on their proficiency on avariety of skills. Thus, each resource may be classified as proficienton a set of skills and novice in another set of skills. The root-causediagnosis engine 212 may then apply a machine learning technique, suchas decision trees, to learn discriminatory attributes between thevarious classes of skill efficiency in which the resources areclassified. For example, skill set information of a group of resourceswho worked on tasks of a particular process may be filtered from theresource-skill matrix. Thereafter, based on a proficiency of the skillsof the group of resources determined from the filtered resource-skillmatrix, the group of resources may be categorized into variouscategories. Then, differentiating attributes may be ascertained acrossthe group of resources categorized in the various skill proficiencycategories. For instance, if resources of similar skill proficiencyworked on the tasks of the process, the root-cause of longer workingtime on the tasks may be attributable to one or more employees who werestaffed as ad-hoc resources on the tasks.

Once the set of root-causes is determined, the root-cause diagnosisengine 212 may also prioritize the set of root-causes based on a levelof impact of each root-cause on the execution of each of the one or moreprocesses. For instance, a root-cause of a deviation that may lead to amore severe non-compliance to the execution of a process may beprioritized above the other root-causes. The severity of non-conformancemay be in terms of quantitative and qualitative metrics, as discussed instep 304 c (with reference to the compliance analysis).

At step 308, one or more recommendations associated with client processexecution of the one or more processes may be generated. In anembodiment, the recommendation engine 214, under the control of theprocessors 202, may be configured to generate the one or morerecommendations associated with client process execution of the one ormore processes based on the set of root-causes. In an embodiment, therecommendation engine 214 may generate at least one recommendation foreach root-cause in the set of root-causes by use of the augmentedbusiness data. The client process execution of the one or more processesmay be accordingly performed through the service delivery framework ofthe organization, based on the one or more recommendations, as describednext.

For instance, the set of root-causes may include three root-causes. Afirst root-cause from the set of root-causes may indicate that thegranularity at which activities of a process are defined may influencethe complexity of the activities of the process. This may in-turninfluence efficient execution of the process. For the first root-cause,the recommendation engine 214 may provide a recommended range of a levelof granularity for the process, in accordance with an allowable processgranularity value from the augmented business data. A second root-causefrom the set of root-causes may indicate that experience and skillproficiency of resources may influence the working time of a process.For the second root-cause, the recommendation engine 214 may recommendthat the experience and skill set of deployed resources shouldcorrespond to at least a minimum prescribed experience and skill setcorresponding to the process, as per the augmented business data. Forinstance, a minimum of two years of work-experience in a relevant domainwith a master's degree in that domain may be a prerequisite to bestaffed on tasks of the process. Further, a third root-cause from theset of root-causes may indicate that ad-hoc resources may negativelyimpact the working time of a process. For the third root-cause, therecommendation engine 214 may recommend deployment of full-time (ordedicated) resources to the process for at least a predefined time (suchas three months).

At step 310, the one or more generated recommendations may be presentedto the user of the first user computing-device 106. In an embodiment,the processor 202 may be configured to present the one or more generatedrecommendations to the user of the first user computing-device 106. Theprocessor 202 may transmit the one or more recommendations to the firstuser computing-device 106. The first user computing-device 106 maydisplay the one or more recommendations to the first user, on a displayscreen of the first user computing-device 106, via a user interface ofthe first user computing-device 106.

At step 312, values may be assigned to one or more parameters associatedwith a client process execution of the one or more processes. In anembodiment, the processor 202 may be configured to assign the values tothe one or more parameters associated with the client process executionof the one or more processes. Examples of the one or more parameters mayinclude, but may not be limited to, a number of resources allocated toeach process, a skill set of resources allocated to each process, aratio of ad-hoc to permanent resources allocated to each process, aminimum duration of resource allocation to each process, and the like. Aset of SLAs and/or a set of KPIs required to be achieved on an executionof each process may also be specified within the one or more parameters.In an embodiment, the assignment of the values may be performed eithermanually based on a user-input or automatically without any user-input.In the first case, the user-input may be received from the user of thefirst user computing-device 102. The processor 202 may prompt the user,via the user interface of the first user computing-device 106, toprovide the values of the one or more parameters, for a simulated clientprocess execution of the one or more processes. Thus, the values of theone or more parameters may be assigned based on the user-input receivedfrom the user of the first user computing-device 106. In the secondcase, the processor 202 may automatically assign the values to the oneor more parameters based on at least the one or more recommendations forthe execution of the one or more processes and/or the decision rules ofthe organization. The assignment of the one or more parameters may alsobe based on the other information in the augmented business data, suchas the information pertaining to the organization structure and/or theskill metrics.

At step 314, a client process execution of the one or more processes maybe simulated. In an embodiment, the processor 202 may be configured tosimulate the client process execution of the one or more processes basedon the values assigned to the one or more parameters and/or the one ormore process models of the one or more processes. In an embodiment, theprocessor 202 may extract information associated with the servicedelivery framework and the augmented business data from the databaseserver 108. Thereafter, the processor 202 may use the one or moreparameters to model a client process execution of each process based onthe one or more process models and other information from the augmentedbusiness data (for instance, decision rules). The information associatedwith the service delivery framework may include the decision rulesassociated with delivery of one or more services to the one or moreclients of the organization. That is, the information associated withthe service delivery framework may specify how the one or more processesexecuted by the organization may translate into the provisioning of theone or more services to the plurality of clients of the predefined type.Thus, client specific SLAs and KPIs (external or committed to theclient) may be translated into organizational SLAs and KPIs (internal orcommitted within the organization), and vice versa, based on theinformation associated with the service delivery framework. During thesimulation of the client process execution, the processor 202 may usethe information associated with the service delivery framework totranslate client specific KPIs and SLAs (that may be provided by theuser or known based on the predefined type of the plurality of clients)to organizational SLAs and KPIs required to be met for each process. Theorganizational SLAs and KPIs may be used along with the one or moreparameters for the simulation of the client process execution of the oneor more processes. A person skilled in the art may understand that theorganizational SLAs and KPIs may alternatively be specified by the useralong with the other one or more parameters. In such a scenario, theinformation associated with the service delivery framework may not berequired to be used to determine the organizational SLAs and KPIs.

Examples of the one or more techniques that may be used to simulate theclient process execution of the one or more processes may include, butare not limited to, Monte Carlo simulation, Finite State Machine (FSM),and/or Support Vector Machine (SVM). In an embodiment, a result of thesimulation may be presented as a visual workflow output with associatedperformance metrics to the user of the first user computing device 106,via the user interface of the first user computing-device 106.Thereafter, the user of the first user computing-device 106 may beprompted to provide input associated with another set of values of theone or more parameters. At this stage, the user may again consult theone or more recommendations and provide values of the one or moreparameters according to the result of the simulation and the consultedrecommendations. Alternatively, the processor 202 may automaticallydetermine another set of values for the one or more parameters based onthe one or more recommendations and the decision rules of theorganization. On the basis of the another set of values of the one ormore parameters, the processor 202 may run a new simulation of theclient process execution of the one or more processes and present a newresult to the user of the first user computing-device 106. Thistrial-and-run of the simulations may be iterated with different valuesof the one or more parameters to provide the user with a combination ofresults related to the client process execution of the one or moreprocesses. The user may then select a preferred set of values of the oneor more parameters associated with the client process execution of theone or more processes. The plurality of clients of the predefined typemay then be serviced through the service delivery framework based theclient process execution of the one or more processes, using theselected set of values of the one or more parameters.

FIG. 4 is a flow diagram that illustrates a method for generatingrecommendations associated with client process execution in anorganization, in accordance with at least one embodiment. With referenceto FIG. 4, there is shown a flow diagram 400, which is explained inconjunction with FIGS. 1, 2, 3A, and 3B.

As shown in FIG. 4, the flow diagram 400 includes event logs 402, theanalytics engine 210 (of FIG. 2), augmented business data 408, insights410, the root-cause diagnosis engine 212 (of FIG. 2), root-causes 412,the recommendation engine 214 (of FIG. 2), and recommendations 414. Theevent logs 402 are shown to include event data associated with one ormore process instances (case-log instances) such as CL₁ to CL_(N). Theflow diagram 400 further illustrates types of analysis performed by theanalytics engine 210, such as process discovery and complexity analysis406A, compliance analysis 406B, and performance analysis 406C. Theinsights 410 are shown to include process models and complexity 410A,deviations 410B, and bottlenecks 410C. Further, various types ofaugmented business data 408 are shown, such as process models 408A,decision rules 408B, organizational structure 408C, and skill metrics408D.

The processor 202 of the application server 110 may extract event dataassociated with one or more processes executed to service the pluralityof clients of the predefined type. For instance, the processor 202 mayextract the event data associated with the process instances 404A (thatis, CL₁) to 404N (that is, CL_(N)) from the event log 402 stored in thedatabase server 108. The retrieval of the event data from the databaseserver 108 is explained further in step 302 (of FIG. 3A). Post theretrieval of the event data, the analytics engine 210 may performcross-clientele analysis, such as process discovery and complexityanalysis 406A, compliance analysis 406B, and performance analysis 406C,of the retrieved event data across the plurality of clients of thepredefined type to determine cross-clientele information. In anembodiment, the cross-clientele information may include the insights410, which may be indicative of a “WHAT” aspect associated with aprocess execution of the one or more processes, across the plurality ofclients. As shown, the insights 410 obtained by the cross-clienteleanalysis may include the process model and complexity 410A, thedeviations 410B, and the bottlenecks 410C (of the one or moreprocesses). In an embodiment, the analytics engine 210 may also use theaugmented business data 408 during the cross-clientele analysis. Thecross-clientele analysis is explained in detail in method step 304 ofFIG. 3A.

Based on the process discovery and complexity analysis 406A, processmodels and complexity 410A (of the one or more processes) may bedetermined, as explained further in step 304 a of FIG. 3B. Thecross-clientele analysis performed by the analytics engine 210 mayfurther include performing compliance analysis 406B of the retrievedevent data across the plurality of clients. Based on the complianceanalysis 406B, the deviations 410B (between the observed and theexpected execution behavior of the one or more processes) may bedetermined. The compliance analysis 406B of the retrieved event data isexplained in further detail in step 304 c of FIG. 3B. In addition, thecross-clientele analysis performed by the analytics engine 210 mayfurther include performing performance analysis 406C of the retrievedevent data across the plurality of clients. Based on the performanceanalysis 406C, the bottlenecks 410B (of the one or more processes)and/or the observed performance metrics of the one or more processes(not shown in FIG. 4) may be determined. The performance analysis 406Cof the retrieved event data is explained in further detail in step 304 bof FIG. 3B.

In an embodiment, the insights 410 obtained from the analytics engine210 and the augmented business data 408 may be communicated to theroot-cause diagnosis engine 212. The root-cause diagnosis engine 212 mayuse the augmented business data 408 to determine the root-causes 412.The root-causes 412 may be indicative of a “WHY” aspect related to theobtained insights 410. The determination of the root-causes 412 by theroot-cause diagnosis engine 212 is explained in further detail in step306 of FIG. 3A. Further, the root-causes 412 may be communicated to therecommendation engine 214. The recommendation engine 214 may alsoreceive the augmented business data 408 (though not shown in FIG. 4).Based on the root-causes 412, the recommendation engine 214 may generaterecommendations 414 associated with a client process execution of theone or more processes. The recommendations 414 may be indicative of a“HOW” aspect of optimization of client process execution of the one ormore processes though a service delivery framework of the organization.The generation of the recommendations 414 is explained in further detailin step 308 of FIG. 3A. Thereafter, the recommendations 414 may bepresented to the user of the first user computing-device 106, asexplained in step 310 of FIG. 3A.

Further, the processor 202 may simulate a client process execution ofthe one or more processes based on one or more parameters associatedwith the one or more processes. The one or more parameters may beassigned values based on user-input or automatically without any userinput, as explained in step 312 of FIG. 3A. The simulation of the clientprocess execution of the one or more processes may be based on the oneor more parameters and one or more process models of the one or moreprocesses, as explained in step 314 of FIG. 3A.

FIG. 5 illustrates an exemplary event log of one or more processes thatmay be executed in an organization to service a plurality of clients ofa predefined type, in accordance with at least one embodiment. Withreference to FIG. 5, there is shown an event log 500, which is explainedin conjunction with FIGS. 1, 2, 3A, and 3B.

As shown in FIG. 5, the plurality of fields in the event log 500 mayinclude a Case ID field 502, a Task ID field 504, a Type field 506, aResource field 508, a Timestamp field 510, a Cost field 512, and aRevenue field 514. The event log 500 is explained with reference toevent log entries related to a transaction bearing case ID “Case i.”Examples of such event log entries include a first row 516 a, a thirdrow 516 b, a fifth row 516 c, a ninth row 516 d, a tenth row 516 e, aneleventh row 516 f, and a twelfth row 516 g of the event log 500.

The Case ID field 502 may store unique IDs assigned to each process ortransaction, whereas the Task ID field 504 may store identificationdetails related to each task in a process or transaction. The Type field506 may denote a type of the log entry that corresponds to the currenttask in the process or transaction. The Resource field 508 may record aname of an employee or vendor who is assigned a particular task of aprocess or transaction. In some cases, the Resource field 508 maycontain a value “System” for automatically performed tasks. Further, theResource field 508 may contain a value “Admin” for tasks that may beperformed by an Administrator (or task allocator). In addition, theTimestamp field 510 may record a date-time value that may correspond toa particular event log entry. The date-time values in the Timestampfield 510 may be useful to determine efficiency and productivity valuesof the resources and vendors associated with the organization. Further,the Cost field 512 and the Revenue field 514 may be additionallyprovided to record a cost incurred during performance of a task andrevenue earned on performance of the task. The data in the Cost field512 and the Revenue field 514 may be used for process costing, processrevenue, and process earning calculations.

The Transaction bearing case ID as “Case i” (i.e., the i^(th) process ortransaction) is now explained as an exemplary transaction based onvalues of fields related to the “Case i” in the event log 500. The firstrow 516 a of the event log 500 denotes a first entry related to the caseID “Case i.” The Task ID field 504 has a value of “Transaction,” whilethe Type field 506 has a value of “Start.” Further, the Resource field508 has a value of “System,” the Timestamp field 510 has a value of“2016 Mar. 5 10:02:36 IST,” while the Cost field 512 and Revenue field514 have a value of “0 USD” each. Thus, the first row of the event logrelates to a start of the transaction bearing case ID “Case i” by theSystem (or automatic start of the transaction). Further, the third row516 b of the event log 500 denotes that an “Admin” assigns thetransaction with case ID “Case i” to one or more resources forprocessing and auditing. In addition, the fifth row 516 c of the eventlog 500 captures an event related to a “start” of a “Transcription” taskof the transaction with case ID “Case i” by a resource named “John” fora cost of “0.5 USD.” Further, the ninth row 516 d of the event log 500denotes an event related to a completion of the “Transcription” task ofthe transaction with case ID “Case i” by “John,” which may fetch revenueof “0.6 USD.” Thus, the “Transcription” task is profit-making task ofthe transaction with case ID “Case i,” bearing a profit of “0.1 USD.”

As shown in the tenth row 516 e of the event log 500, an “Audit” task ofthe transaction with case ID “Case i” may be started by a resource named“Mike” for a cost of “0.05 USD.” Further, as per the eleventh row 516 fof the event log 500, the “Audit” task of the transaction with case ID“Case i” may be completed by “Mike” fetching revenue of “0.02 USD.”Thus, the “Audit” task is a loss-making task of the transaction withcase ID “Case i,” bearing a loss of “0.03 USD.” However, the transactionwith case ID “Case i” may be a profit making transaction with an overallprofit of “0.07 USD” (i.e., 0.1 USD-0.03 USD). In addition, as per thetwelfth row 516 g of the event log 500, the transaction bearing the caseID “Case I” may be flagged as “Complete” by the “System.” As may beevident from the event log 500, the Timestamp field 510 of the eleventhrow 516 f and twelfth row 516 g may have the same value (i.e., “2016Mar. 5 10:22:52 IST”). Thus, the transaction may be flagged as“Completed” by the “System” as soon as the Auditing of the transactionis completed (and no errors are detected or detected errors arerectified).

FIG. 6 illustrates an exemplary process model for transaction-basedbusiness processes of an organization, in accordance with at least oneembodiment. With reference to FIG. 6, there is shown a process model600, which is explained further in conjunction with FIGS. 1, 2, 3A, 3B,and 5.

In an embodiment, the process model 600 may represented using one ormore process modeling techniques. Examples of the one or more processmodeling techniques may include, but may not be limited to, Petri-nets,Event-driven Process Chain (EPC), Business Process Model and Notation(BPMN), heuristic-net, and/or other process modeling techniques known inthe art. Each transaction may include performance of tasks of varioustypes, which may transition a processing state of the transaction. Thus,the transaction based business processes may also be represented usingFinite Automata State Machines (FSMs). As shown in FIG. 6, the processmodel 600 of a transaction may include a plurality of transactionstates, a plurality of processing states, and a plurality of auditstates. The plurality of transaction states may include a transactionstart state 602, a transaction assign state 604, and a transactioncomplete state 622. Further, the plurality of processing states mayinclude a process start state 606, a process suspend state 608, aprocess resume state 610, and a process complete state 612. In addition,the plurality of audit states may include an audit start state 614, anaudit suspend state 616, an audit resume state 618, and an auditcomplete state 620.

The process model 600 may be defined such that a state transition mayoccur from a first state to a second state when a task that can triggerthe state transition is performed or completed. The process model 600 isnow explained from the initial state, that is, the transaction startstate 602. At the transaction start state 602, a pending transaction,which has not yet been processed, may be selected for processing andflagged as started by the system (automatically). The transaction may betransitioned to the transaction assign state 604, when the transactionprocessing and auditing tasks are assigned to one or more resourcesassociated with the organization. Thereafter, the transaction may betransitioned to the process start state 606, when the one or moreresources commence work on the processing tasks of the transaction. Incase a resource suspends work on an ongoing task of the transaction, thetransaction for that task may be transitioned to the process suspendstate 608. If one or more other tasks are still in progress, thetransaction state for such ongoing tasks in progress may remain inprocess start state 606. Further, when the suspended task is resumed,the transaction for that resumed task may be transitioned to the processresume state 610. If the resumed task is re-suspended, the transactionfor that re-suspended task may again be transitioned to the processsuspend state 608 and may be re-transitioned back to the process resumestate 608 when the task is resumed again. When the ongoing tasks orresumed tasks are completed, the transaction for such completed tasksmay be transitioned to the process complete state 612. Further, when thetransactions for all processing tasks of the transaction are completed,the transaction may automatically be transitioned to the audit startstate 614 for all the tasks.

As may be evident from the process model 600 of FIG. 6, the statetransitions among the plurality of process states and the plurality ofaudit states may occur in a similar manner. For instance, when the auditprocessing of one or more processed tasks is commenced, the transactionmay be transitioned to the audit processing state 614 for such processedtasks. Further, on suspension of audit processing of a processed task,the transaction for such suspended audit processing task may betransitioned to the audit suspend state 616. Further, the transactionmay be transitioned to audit resumed state 618, when the suspended auditprocessing task may be resumed. If the resumed audit processing task isre-suspended, the transaction for such re-suspended task may betransitioned back to the audit suspend state 616. Further, on completionof ongoing or resumed audit processing tasks, the transaction for suchtasks may be transitioned to audit complete state 620. Thereafter, whenaudit processing of all the processed tasks is complete, the transactionmay be automatically transitioned to the transaction complete state 622for all the tasks.

FIGS. 7A and 7B illustrate exemplary process models of a process acrosstwo different clients, which may be determined based on thecross-clientele analysis of the event log, in accordance with at leastone embodiment. With reference to FIGS. 7A and 7B, a first process model700A and a second process model 700B are shown. The first process model700A and the second process model 700B are explained in conjunction withFIGS. 1, 2, 3A, 3B, and 6.

As may be evident from FIGS. 6, 7A and 7B, the first process model 700Aand the second process model 700B may both resemble the process model600. In accordance with an embodiment, the first process model 700A andthe second process model 700B may represent a same transaction-basedprocess executed by the organization to service a first client and asecond client, respectively. The first process model 700A and the secondprocess model 700B may be determined based on a cross-clientele analysisof the event log across the first client and the second client, in amanner similar to that described in FIGS. 3A and 3B.

With reference to FIG. 7A, it may be evident that out of a total of“1780” process instances, there were only “68” process instances ofsuspended tasks inclusive of “8” process instances of re-suspendedtasks. Again, in case of “1780” audit tasks, there were only “30”suspended audit tasks inclusive of “5” re-suspended audit tasks.Further, there were no re-assignments of tasks for processing from theauditing stage. Hence, the execution of the process for the first clientmay have lesser errors with greater accuracy.

With reference to FIG. 7B, it may be evident that there were “1258”process instances of suspended tasks (exclusive of re-suspended tasks)out of “6500” process instances of initial tasks and “78” processinstances of re-assigned tasks. Further, there were a substantial numberof task re-suspensions (i.e., “232” tasks), which further raised thesuspended task count to “1490.” Similarly, in case of “6578” audittasks, there were a significant number of task suspensions (i.e., “338”tasks) and re-suspensions (i.e., “58” tasks). The total task suspensioncount for audit tasks was “396” tasks. In addition, as may be evidentfrom the process model 700B, after the auditing stage, “78” tasks werere-assigned for processing. This may be indicative of quality issues inthe processing of the tasks and lower efficiency of the overall processdue to re-work.

FIG. 8 illustrates exemplary deviations in the client process executionof the one or more processes, which may be determined based oncompliance analysis of the event log across the plurality of clients, inaccordance with an embodiment. With reference to FIG. 8, there are showndeviation insights 800, which are explained further in conjunction withFIGS. 1, 2, 3A, 3B, 6, 7A, and 7B.

In an embodiment, the deviation insights 800 may be determined based onthe compliance analysis of the event log, as described in FIGS. 3A and3B. As shown in FIG. 8, the deviation insights 800 may include adeviations field 802, a client-processes field 804, and a number oftransactions field 806. The number of transactions in the number oftransactions field 806 may be affected by the deviations (in thedeviations field 802) across the client process pairs (in theclient-processes field 804). For the sake of explanation, the event logis considered to include event data related to client process executionof four client processes P1, P2, P3, and P4 across an operational domainA. The event data of the four processes in the domain A is considered tobe across four clients C1, C2, C3, and C4, which operate at least in thedomain A. The deviation insights 800 are now explained.

As shown in FIG. 8, the first two deviations are related to assignmentof transaction processing and auditing tasks to resources. Suchdeviations may be observed when a transaction processing task isassigned to different resources or a transaction auditing task isperformed by different resources. Multiple resources working on a task,such as, when the task is re-assigned (or assigned in parallel tomultiple resources), may lead to reduction in efficiency, re-work, andredundancy of effort. For instance, the processes P1 and P2 for theclient C2 may experience the aforementioned deviations.

In addition, the third type of deviation evident from the deviationinsights 800 may be performance of transaction auditing after thetransaction is completed. This may lead to re-work and delay indelivering of results related to the process to the clients. Forinstance, clients C1, C2, and C4 may experience such a deviation inprocesses P2, P1, and P1, respectively. Further, another major type ofdeviation evident from the deviation insights 800 may be execution oftransaction processing tasks more than once due to quality issues.During auditing of the transactions, errors may be identified in theexecuted transaction processing tasks. Some of the errors may becorrectable during the auditing stage by the resources performing theauditing. However, certain errors may warrant a re-work on thetransaction processing task. This may entail further processing time,delay in delivery of results to the client, escalation of processingcost, and reduction in process efficiency. As may be evident from thedeviation insights 800, all four clients C1, C2, C3, and C4 mayexperience such deviation in one or more processes. Process P2 of clientC4 may be affected by this deviation in 12 transactions, as shown inFIG. 8. Another type of deviation shown in the deviation insights 800may correspond to abortion of transactions after resources completetransaction processing. This may be due to change in businessrequirements of a client. In many cases, this may not be controllable bythe organization, as it may be due to a change on the client's end.However, making suitable provisions in the service delivery agreementsby the organization may help the organization in minimizing lossesincurred in such cases.

The disclosed embodiments encompass numerous advantages. The disclosureprovides a method and system for generation of one or morerecommendations for efficient execution of one or more processes in anorganization. The one or more processes may be executed through aservice delivery framework of the organization to provide one or moreservices to a plurality of clients of a predefined type. To generate theone or more recommendations, an event log including event data thatcaptures information related to previous executions of the one or moreprocesses may be analyzed across the plurality of clients of thepredefined type. The cross-clientele analysis of the event log may yieldcross-clientele information that may include statistics related toprocess models, process complexity, process compliance deviation betweenobserved and expected client process execution of one or more processes,and/or process bottlenecks. The statistics associated with thecross-clientele information may act as useful insights to understand asto what are the trends associated with execution of the one or moreprocesses across the plurality of clients. Such trends may be analyzedfurther and correlated with augmented business data of the organization,such as process models, decision rules, organizational structure, and/orskill matrices associated with the organization. Based on thecorrelation, root-causes associated with the trends (such as the processcompliance deviations) associated with the cross-clientele informationmay be determined. The root-causes may be further used to generate theone or more recommendations for efficient execution of the one or moreprocesses. Hence, based on the cross-clientele analysis of the event logof the one or more processes, the one or more recommendations may begenerated for improvement of execution of the one or more processes.

Thus, the disclosure provides a holistic, data-driven framework foranalysis of the event data of the event log across the plurality ofclients to obtain the cross-clientele information. Key learning derivedfrom an efficient execution of a process for a client may be leveragedfor execution of that process for another client efficiently, based onthe root-cause analysis of the cross-clientele information. The set ofroot-causes determined for various deviations related to the executionof one or more processes may be useful to track opportunities forimprovement of client process execution. Further, the one or morerecommendations may be used as such for improvement of execution of theprocesses. Alternatively, the recommendations may be used for simulationof client process execution of the one or more processes based on one ormore parameters (selected by user or determined automatically based onthe one or more recommendations). The result of the simulation may beused to assess ideal parameters for the one or more processes, which maylead to an efficient execution of the one or more processes.

The disclosed methods and systems, as illustrated in the ongoingdescription or any of its components, may be embodied in the form of acomputer system. Typical examples of a computer system include ageneral-purpose computer, a programmed microprocessor, amicro-controller, a peripheral integrated circuit element, and otherdevices, or arrangements of devices that are capable of implementing thesteps that constitute the method of the disclosure.

The computer system comprises a computer, an input device, a displayunit, and the internet. The computer further comprises a microprocessor.The microprocessor is connected to a communication bus. The computeralso includes a memory. The memory may be RAM or ROM. The computersystem further comprises a storage device, which may be a HDD or aremovable storage drive such as a floppy-disk drive, an optical-diskdrive, and the like. The storage device may also be a means for loadingcomputer programs or other instructions onto the computer system. Thecomputer system also includes a communication unit. The communicationunit allows the computer to connect to other databases and the internetthrough an input/output (I/O) interface, allowing the transfer as wellas reception of data from other sources. The communication unit mayinclude a modem, an Ethernet card, or other similar devices that enablethe computer system to connect to databases and networks, such as, LAN,MAN, WAN, and the internet. The computer system facilitates input from auser through input devices accessible to the system through the I/Ointerface.

To process input data, the computer system executes a set ofinstructions stored in one or more storage elements. The storageelements may also hold data or other information, as desired. Thestorage element may be in the form of an information source or aphysical memory element present in the processing machine.

The programmable or computer-readable instructions may include variouscommands that instruct the processing machine to perform specific tasks,such as steps that constitute the method of the disclosure. The systemsand methods described can also be implemented using only softwareprogramming or only hardware, or using a varying combination of the twotechniques. The disclosure is independent of the programming languageand the operating system used in the computers. The instructions for thedisclosure can be written in all programming languages, including, butnot limited to, ‘C’, ‘C++’, ‘Visual C++’ and ‘Visual Basic’. Further,software may be in the form of a collection of separate programs, aprogram module containing a larger program, or a portion of a programmodule, as discussed in the ongoing description. The software may alsoinclude modular programming in the form of object-oriented programming.The processing of input data by the processing machine may be inresponse to user commands, the results of previous processing, or from arequest made by another processing machine. The disclosure can also beimplemented in various operating systems and platforms, including, butnot limited to, ‘Unix’, ‘DOS’, ‘Android’, ‘Symbian’, and ‘Linux’.

The programmable instructions can be stored and transmitted on acomputer-readable medium. The disclosure can also be embodied in acomputer program product comprising a computer-readable medium, or withany product capable of implementing the above methods and systems, orthe numerous possible variations thereof.

Various embodiments of the methods and systems for generation ofrecommendations associated with client process execution in anorganization have been disclosed. However, it should be apparent tothose skilled in the art that modifications in addition to thosedescribed are possible without departing from the inventive conceptsherein. The embodiments, therefore, are not restrictive, except in thespirit of the disclosure. Moreover, in interpreting the disclosure, allterms should be understood in the broadest possible manner consistentwith the context. In particular, the terms “comprises” and “comprising”should be interpreted as referring to elements, components, or steps, ina non-exclusive manner, indicating that the referenced elements,components, or steps may be present, or used, or combined with otherelements, components, or steps that are not expressly referenced.

A person with ordinary skills in the art will appreciate that thesystems, modules, and sub-modules have been illustrated and explained toserve as examples and should not be considered limiting in any manner.It will be further appreciated that the variants of the above disclosedsystem elements, modules, and other features and functions, oralternatives thereof, may be combined to create other different systemsor applications.

Those skilled in the art will appreciate that any of the aforementionedsteps and/or system modules may be suitably replaced, reordered, orremoved, and additional steps and/or system modules may be inserted,depending on the needs of a particular application. In addition, thesystems of the aforementioned embodiments may be implemented using awide variety of suitable processes and system modules, and are notlimited to any particular computer hardware, software, middleware,firmware, microcode, and the like.

The claims can encompass embodiments for hardware and software, or acombination thereof.

It will be appreciated that variants of the above disclosed, and otherfeatures and functions or alternatives thereof, may be combined intomany other different systems or applications. Presently unforeseen orunanticipated alternatives, modifications, variations, or improvementstherein may be subsequently made by those skilled in the art, which arealso intended to be encompassed by the following claims.

What is claimed is:
 1. A method for recommending a client processexecution based on event log data pertaining to execution of one or moreclient processes corresponding to a plurality of clients of anorganization, the method comprising: retrieving, by one or moreprocessors, an event log from a memory device, wherein the event logincludes data associated with one or more events captured duringexecution of one or more processes in the organization, wherein the oneor more processes correspond to services provided by the organization tothe plurality of clients of a predefined type; analyzing, by the one ormore processors, the retrieved event log across the plurality of clientsof the predefined type to determine cross-clientele informationassociated with the one or more processes, wherein the cross-clienteleinformation includes at least a process compliance deviation between anobserved and an expected client process execution of the one or moreprocesses; determining, by the one or more processors, a set ofroot-causes associated with the process compliance deviation of the oneor more processes based on at least one or more process models of theone or more processes and/or one or more decision rules associated withthe organization, and based on a skill matrix associated with one ormore resources associated with the organization; generating, by the oneor more processors, one or more recommendations for the client processexecution of the one or more processes of the organization, based on thedetermined set of root-causes; and simulating, by the one or moreprocessors, the client process execution of the one or more processes inthe organization, based on one or more parameters associated with theone or more processes and one or more process models of the one or moreprocesses, wherein the simulation is repeated using different values forthe one or more parameters to yield a combination of results related tothe client process execution of the one or more processes.
 2. The methodof claim 1, wherein each of the one or more processes correspond to aworkflow including one or more ordered tasks performed by one or moreresources associated with the organization to provide a service to atleast one client.
 3. The method of claim 1, wherein the predefined typecorresponds to one or more of: a geographical region of operation of aclient, one or more domains in which the client operates, a type of workthat the client allocates to the organization, and/or a type ofoperational or functional relationship of the client and theorganization.
 4. The method of claim 1, wherein the cross-clienteleinformation associated with the one or more processes further comprisesone or more of the one or more process models, a process complexityassociated with the one or more processes, one or more bottlenecksassociated with the one or more processes, and/or observed values of oneor more performance metrics associated with the one or more processes.5. The method of claim 1, wherein the analysis of the retrieved eventlog further comprises one or more of: a process discovery analysis, acomplexity analysis, a compliance analysis, and/or a performanceanalysis, associated with each of the one or more processes.
 6. Themethod of claim 5 further comprising determining, by the one or moreprocessors, the one or more process models of the one or more processesbased on the process discovery analysis of the event log.
 7. The methodof claim 1 further comprising determining, by the one or moreprocessors, the process compliance deviation based on the complianceanalysis of the event log, wherein the process compliance deviationincludes a deviation between expected and observed values of one or moreof: one or more performance metrics, a control-flow related aspect, adata-related aspect, and/or a resource-related aspect of the clientprocess execution of each of the one or more processes.
 8. The method ofclaim 5 further comprising, determining, by the one or more processors,one or more process bottlenecks and/or observed values of one or moreperformance metrics, of each of the one or more processes, based on theperformance analysis of the event log.
 9. The method of claim 1, whereinthe one or more process models of the one or more processes arepre-determined for the organization and the predefined type of theplurality of clients.
 10. The method of claim 1, wherein the expectedvalues of the one or more performance metrics is based on the one ormore process models of the one or more processes and/or the predefinedtype of the plurality of clients.
 11. The method of claim 1, wherein theone or more performance metrics correspond to one or more of a set ofKey Performance Indicators (KPIs) associated with a client and/or a setof Service Level Agreements (SLAs) associated with the client.
 12. Themethod of claim 1, wherein the set of root-causes is further determinedbased on an organizational structure of the organization.
 13. The methodof claim 1 further comprising receiving, by the one or more processors,the one or more parameters as a user input from a user, in response to apresentation of the generated one or more recommendations to the user.14. The method of claim 1 further comprising determining, by the one ormore processors, the one or more parameters based on the generated oneor more recommendations and/or the one or more decision rules associatedwith the organization.
 15. A system for recommending a client processexecution based on event log data pertaining to execution of one or moreclient processes corresponding to a plurality of clients of anorganization, the system comprising: one or more processors configuredto: retrieve an event log from a memory device, wherein the event logincludes data associated with one or more events captured duringexecution of one or more processes in the organization, wherein the oneor more processes correspond to services provided by the organization tothe plurality of clients of a predefined type; analyze the retrievedevent log across the plurality of clients of the predefined type todetermine cross-clientele information associated with the one or moreprocesses, wherein the cross-clientele information at least includes aprocess compliance deviation between an observed and an expected clientprocess execution of the one or more processes; determine a set ofroot-causes associated with the process compliance deviation of the oneor more processes based on at least on one or more process models of theone or more processes and/or one or more decision rules associated withthe organization, and based on a skill matrix associated with one ormore resources associated with the organization; generate one or morerecommendations for the client process execution of the one or moreprocesses of the organization, based on the determined set ofroot-causes; and simulate, by the one or more processors, the clientprocess execution of the one or more processes in the organization,based on one or more parameters associated with the one or moreprocesses and one or more process models of the one or more processes,wherein the simulation is repeated using different values for the one ormore parameters to yield a combination of results related to the clientprocess execution of the one or more processes.
 16. The system of claim15, wherein the cross-clientele information associated with the one ormore processes further comprises one or more of: the one or more processmodels, a process complexity associated with the one or more processes,one or more bottlenecks associated with the one or more processes,and/or observed values of one or more performance metrics associatedwith the one or more processes.
 17. The system of claim 15, wherein theanalysis of the event log further comprises performance of one or moreof: a process discovery analysis, a complexity analysis, a complianceanalysis, and/or a performance analysis, associated with each of the oneor more processes.
 18. A computer program product for use with acomputer, the computer program product comprising a non-transitorycomputer readable medium, wherein the non-transitory computer readablemedium stores a computer program code for recommending a client processexecution based on event log data pertaining to execution of one or moreclient processes corresponding to a plurality of clients of anorganization, wherein the computer program code is executable by one ormore processors to: retrieve an event log from a memory device, whereinthe event log includes data associated with one or more events capturedduring execution of one or more processes in the organization, whereinthe one or more processes correspond to services provided by theorganization to the plurality of clients of a predefined type; analyzethe retrieved event log across the plurality of clients of thepredefined type to determine cross-clientele information associated withthe one or more processes, wherein the cross-clientele information atleast includes a process compliance deviation between an observed and anexpected client process execution of the one or more processes;determine a set of root-causes associated with the process compliancedeviation of the one or more processes based at least on one or moreprocess models of the one or more processes and/or one or more decisionrules associated with the organization, and based on a skill matrixassociated with one or more resources associated with the organization;generate one or more recommendations for the client process execution ofthe one or more processes of the organization, based on the determinedset of root-causes; and simulate, by the one or more processors, theclient process execution of the one or more processes in theorganization, based on one or more parameters associated with the one ormore processes and one or more process models of the one or moreprocesses, wherein the simulation is repeated using different values forthe one or more parameters to yield a combination of results related tothe client process execution of the one or more processes.
 19. Themethod of claim 1, wherein the simulating comprises at least one of aMonte Carlo simulation, a Finite State Machine (FSM) simulation, and aSupport Vector Machine (SVM) simulation.
 20. The system of claim 15,wherein the simulating comprises at least one of a Monte Carlosimulation, a Finite State Machine (FSM) simulation, and a SupportVector Machine (SVM) simulation.